Obstacle detection systems

ABSTRACT

Virtual bumpers for autonomous vehicles improve effectiveness and safety as such vehicles are operated. One or more sensor systems having a Lidar sensor and a camera sensor determine proximity of objects around the vehicle and facilitate identification of the environment around the vehicle. The sensor systems are placed at various locations around the vehicle. The vehicle identifies an object and one or more properties of the identified object using the sensor systems. Based on the identified object and the properties of the object, a virtual bumper may be created for that object. For example, if the object is identified as another vehicle moving with a certain velocity, the vehicle may determine a minimum space to avoid the other vehicle, either by changing direction or reducing the velocity of the vehicle, with the minimum space constituting a virtual bumper.

THE FIELD OF THE DISCLOSURE

The present disclosure relates to a virtual bumper for a vehicle.

THE RELEVANT TECHNOLOGY

The present disclosure relates to a virtual bumper for a vehicle. Forexample, the present disclosure may facilitate one or more devices orsystems via which an autonomous vehicle (AV) may be provided withvirtual bumpers. Such devices may include one or more Light Detectionand Ranging (Lidar) systems.

The subject matter claimed herein is not limited to embodiments thatsolve any disadvantages or that operate only in environments such asthose described above. Rather, this section is only provided toillustrate one exemplary technology area where some embodimentsdescribed herein may be practiced.

BRIEF DESCRIPTION OF THE DRAWINGS

To further clarify the above and other advantages and features of thepresent disclosure, a more particular description of the disclosure willbe rendered by reference to specific embodiments thereof which areillustrated in the appended drawings. It is appreciated that thesedrawings depict only typical embodiments of the disclosure and aretherefore not to be considered limiting of its scope. The disclosurewill be described and explained with additional specificity and detailthrough the use of the accompanying drawings in which:

FIG. 1 illustrates an example system of virtual bumpers for a vehicle;

FIG. 2 illustrates an example of a sensor system used to implement avirtual bumper;

FIG. 3 illustrates an example configuration of sensor systems;

FIG. 4 illustrates another example configuration of sensor systems;

FIG. 5 illustrates another example system of virtual bumpers for avehicle; and

FIG. 6 illustrates another example system of implementing virtualbumpers for a vehicle.

DETAILED DESCRIPTION

The present disclosure may relate to the implementation of virtualbumpers for an AV. For example, one or more sensor systems of a Lidarsensor and a camera sensor may be used to determine proximity of objectsaround an AV. Such information may be used to operate or control the AV.

FIG. 1 illustrates an example system 100 of virtual bumpers for avehicle 101, in accordance with one or more embodiments of the presentdisclosure. The vehicle 101 may include one or more sensor systems 110(such as the sensor systems 110 a-110 c) to facilitate identification ofthe environment around the vehicle 101.

As illustrated in FIG. 1, the sensor systems 110 may be placed atvarious locations around the vehicle 101 to facilitate the use ofvirtual bumpers around the vehicle 101. For example, based on identifiedobjects or features in the environment around the vehicle 101, thevehicle 101 may be configured to utilize virtual bumpers as spacesaround the vehicle 101.

In some embodiments, the vehicle 101 may identify an object and one ormore properties of the identified object using the sensor systems 110.Based on the identified object and the properties of the object, avirtual bumper may be created for that object. For example, if theobject is identified as another vehicle moving with a certain velocity,the vehicle 101 may determine a minimum space to avoid the othervehicle, either by changing direction or reducing the velocity of thevehicle 101. In these and other embodiments, the minimum space may betreated as the virtual bumper. Additionally or alternatively, thevirtual bumper may include the minimum space amplified by some otheramount such that the vehicle 101 may operate as if the vehicle werelarger by the other amount, creating a buffer around the vehicle 101.

In some embodiments, the vehicle 101 may generate and/or maintain aprofile of the vehicle 101 to facilitate determination of the minimumspace to avoid an object. Such a profile may include brakingcapabilities of the vehicle 101, a current velocity of the vehicle 101,a current direction of travel of the vehicle 101, etc. In these andother embodiments, the components of the profile may be determined bytesting, such as applying brakes of the vehicle 101 at a given speed anddetermining a distance travelled before coming to a full stop. Asanother example, if the vehicle 101 is a water craft, the vehicle 101may put the engines of the vehicle 101 in full reverse when traveling ata certain speed and determine the distance travelled before coming to afull stop. Additionally or alternatively, components of the profile maybe determined by utilizing one or more readings of the sensor systems110. For example, by comparing the location of fixed objects betweensuccessive readings of the sensor systems 110, a velocity relative tothe fixed objects may be determined using the location of the fixedobject and a temporal component between the successive readings.

The vehicle 101 may include any device or system configured to travel bymotive force. Examples may include autonomous or semi-autonomousautomobiles, scooters, boats, barges, airplanes, drones, etc. In someembodiments, the vehicle 101 may carry passengers, cargo, or any otherpayload.

In some embodiments, the sensor systems 110 may be placed at variouslocations for detecting various aspects of the environment. For example,as illustrated in FIG. 1, the sensor systems 110 a and 110 b may belocated at back corners of the vehicle 101 and facing forward to have aviewing region to the side of and in front of the vehicle. As anotherexample, the sensor system 110 c may be placed on the front of thevehicle 101 and facing forward to have a viewing region of directly infront of the vehicle 101. In these and other embodiments, the sensorsystems 110 may facilitate a view of the majority of spaces around thevehicle 101.

FIG. 2 illustrates an example of a sensor system 210 used to implement avirtual bumper, in accordance with one or more embodiments of thepresent disclosure. The sensor system 210 may be similar or comparableto the sensor system 110 of FIG. 1. In these and other embodiments, thesensor system 110 may include a Lidar device 212 with a Lidar viewingregion 213 and a camera device 214 with a camera viewing region 215.

In some embodiments, the Lidar device 212 and the camera device 214 mayoperate in conjunction to identify an object. For example, the Lidardevice 212 may identify a location of the object and a distance of theobject from the Lidar device, and the camera device 214 may capture animage of the object. In some embodiments, image recognition may beperformed on the image obtained from the camera device 214 to determinea class of the object or the identity of the object (e.g., a person, atree, another vehicle, a gutter, a cement wall, a street sign, etc.),and the location information from the Lidar device 212 may be combinedwith the identified object. In these and other embodiments, theidentified object may have an expected behavior (e.g., behavior of aperson or another vehicle behavior may be erratic but with a tendency totravel in a consistent direction; a tree, a gutter, a cement wall, and astreet sign may be stationary; etc.). In these and other embodiments,the expected behavior may impact the minimum distance determination. Forexample, the minimum distance may be larger for a person compared to theminimum distance for a street sign.

In some embodiments, temporal information may be used in conjunctionwith the Lidar device 212 and the camera device 214 to determinevelocity. For example, the Lidar device 212 may capture data at a knownfrequency, and compare the location information of a given objectbetween successive data captures to determine the distance the objectmoved between the two data captures as compared to the time between thetwo data captures. For a stationary object (e.g., a tree, street sign,etc.), the determined velocity may represent the velocity of the vehicleutilizing the sensor system 210. For moving objects (e.g., anothervehicle), the determined velocity may represent a relative velocity ascompared to the motion of the vehicle utilizing the sensor system 210.In some embodiments, a combination of velocities for fixed objects andmoving objects may be utilized to provide both the velocity of thevehicle using the sensor system 210 based on the fixed objects and avelocity for the moving object based on the combination of the velocityof the vehicle using the sensor system 210 and the velocity using themoving object.

In some embodiments, the Lidar device 212 may include a two-dimensionalLidar such that the Lidar viewing region 213 may be a two-dimensionalbeam. In some embodiments, the Lidar viewing region 213 may beapproximately bumper-height for an automobile. As another example, forwater craft, the Lidar viewing region 213 may be placed at a heightabove an average wave. In these and other embodiments, the use of atwo-dimensional Lidar may provide a low-cost alternative to athree-dimensional Lidar system. In particular, by coupling the Lidardevice 212 with the camera device 214, a lower cost Lidar system may beused to detect the environment around the vehicle. An example of such atwo-dimensional Lidar system may include a Lidar system manufactured byLeddarTech®, as compared to an example three-dimensional Lidar system asmanufactured by Velodyne®.

In some embodiments, the camera device 214 may include any device orsystem configured to capture high resolution color images. In someembodiments, the camera device 214 may be mounted proximate to and/or ina similar orientation with the Lidar device 212. In some embodiments,the camera viewing region 215 may be larger than the Lidar viewingregion 213. The camera viewing region 215 may capture areas above andbelow that captured by the Lidar device 212. For example, the Lidardevice 212 may determine that an object is present, and the cameradevice 214 may capture an entire view of the object, even though only aslice of the object is perceived by the Lidar device 212.

In some embodiments, multiple cameras may be used at different locationssuch that a stereoscopic image may be utilized to facilitate estimationof distance. For example, using a set of stereoscopic images, an objectmay be estimated to be 20 feet away, while the Lidar device 214 maydetect an object 18.3 feet away. In these and other embodiments, thedistance as measured by both sources may facilitate a verification ofthe distance estimations by the other of the Lidar device 212 and/or thecamera device 214. In some embodiments, the vehicle may defer to theLidar device 212 as being a more accurate determination of the distanceto the object.

FIG. 3 illustrates an example configuration 300 of a sensor system 310on a vehicle 301, in accordance with one or more embodiments of thepresent disclosure. As illustrated in FIG. 3, the vehicle 301 may movein the direction as indicated by the dark arrow. The sensor system 310may be placed on the front of the vehicle 301 facing in a rearwarddirection to detect objects behind the vehicle 301.

In some embodiments, the sensor system 310 may be placed to one side ofthe vehicle 301 towards the front in order to better capture lateralobjects approaching the vehicle 301. In these and other embodiments, theconfiguration 300 may include two or more sensor sensor systems 310 onthe front of the vehicle 301 facing backwards, such as one for eachside, or one for each side and one in the middle.

FIG. 4 illustrates another example configuration 400 of sensor systems410 (such as the sensor systems 410 a-410 d) on a vehicle 401, inaccordance with one or more embodiments of the present disclosure. Asillustrated in FIG. 4, the vehicle 401 may move in the direction asindicated by the dark arrow.

As illustrated in FIG. 4, the sensor systems 410 may be placed atvarious locations around the vehicle 401. For example, the sensorsystems 410 a and 410 b may be placed on the back of the vehicle 401facing to cover the sides and front of the vehicle 401. As anotherexample, the sensor system 410 c may be placed on the front of thevehicle 401 and facing forward to cover the front of the vehicle. As anadditional example, the sensor system 410 d may be placed on the back ofthe vehicle 401 facing backwards to cover the back of the vehicle 401.

In these and other embodiments, using multiple low cost sensor systems410 may provide an approach to determining the environment around thevehicle 401 in a less expensive manner compared to conventionalapproaches using expensive sensors.

FIG. 5 illustrates another example system 500 of virtual bumpers for avehicle, in accordance with one or more embodiments of the presentdisclosure. The system 500 may include a Lidar 510, a camera 520, ananalysis engine 530, and one or more automated vehicle (AV) operatingcomponents 540.

As illustrated in FIG. 5, the data obtained by the Lidar 510 and/or thecamera 520 may be provided to the analysis engine 530 for processing.For example, the analysis engine 530 may perform a determination of aminimum distance before colliding with an object. As another example,the analysis engine 530 may determine the location and/or identity ofobjects based on the data from the Lidar 510 and the camera 520. As anadditional example, the analysis engine 530 may determine the velocitiesof the vehicle utilizing the Lidar 510 and the camera 520 and/or anothervehicle.

In some embodiments, the analysis engine 530 may be configured to sendcommands to the AV operating components 540 based on the analysisperformed. For example, the analysis engine 530 may instruct brakingcomponents of the AV operating components 540 to engage to slow and/orstop the vehicle. As another example, the analysis engine 530 mayinstruct the AV operating components 540 to decrease or completely ceaseapplication of a motive force. As an additional example, the analysisengine 530 may instruct the AV operating components 540 to adjuststeering or other directionality control of the vehicle.

In some embodiments, the system 500 may be self-contained and or closedfrom other components or systems of a vehicle. For example, the system500 may operate independently of other control or guidance systems andmay function to provide collision avoidance. In these and otherembodiments, the commands from the analysis engine 530 to the AVoperating components 540 may override instructions from one or moreother systems or components of the vehicle to the AV operatingcomponents 540. In some embodiments, the system 500 may be an opensystem and may interact with other components or systems of a vehicle,such as by using information, providing information, receivinginstructions, providing instructions, etc.

One or more embodiments of the present disclosure may be implementedusing computing devices, such as a device with a processor and/or amemory. Generally, the processor may include any suitablespecial-purpose or general-purpose computer, computing entity, orprocessing device including various computer hardware or softwaremodules and may be configured to execute instructions stored on anyapplicable computer-readable storage media. For example, the processormay include a microprocessor, a microcontroller, a digital signalprocessor (DSP), an application-specific integrated circuit (ASIC), aField-Programmable Gate Array (FPGA), or any other digital or analogcircuitry configured to interpret and/or to execute program instructionsand/or to process data.

Additionally, the processor may include any number of processorsdistributed across any number of network or physical locations that areconfigured to perform individually or collectively any number ofoperations described in the present disclosure. In some embodiments, theprocessor may interpret and/or execute program instructions and/orprocess data stored in the memory, the data storage, or the memory andthe data storage. In some embodiments, the processor may fetch programinstructions from the data storage and load the program instructionsinto the memory.

After the program instructions are loaded into the memory, the processormay execute the program instructions, such as instructions to performany of the operations of the present disclosure.

The memory and the data storage may include computer-readable storagemedia or one or more computer-readable storage mediums for carrying orhaving computer-executable instructions or data structures storedthereon. Such computer-readable storage media may be any available mediathat may be accessed by a general-purpose or special-purpose computer,such as the processor. In some embodiments, the computing system may ormay not include either of the memory and the data storage.

By way of example, such computer-readable storage media may includenon-transitory computer-readable storage media including Random AccessMemory (RAM), Read-Only Memory (ROM), Electrically Erasable ProgrammableRead-Only Memory (EEPROM), Compact Disc Read-Only Memory (CD-ROM) orother optical disk storage, magnetic disk storage or other magneticstorage devices, flash memory devices (e.g., solid state memorydevices), or any other non-transitory storage medium which may be usedto carry or store desired program code in the form ofcomputer-executable instructions or data structures and which may beaccessed by a general-purpose or special-purpose computer. Thenon-transitory computer-readable medium may have stored thereinexecutable code with instructions for the performance of operations.Combinations of the above may also be included within the scope ofcomputer-readable storage media. Computer-executable instructions mayinclude, for example, instructions and data configured to cause theprocessor 910 to perform a certain operation or group of operations.

The communication unit may include any component, device, system, orcombination thereof that is configured to transmit or receiveinformation over a network. In some embodiments, the communication unitmay communicate with other devices at other locations, the samelocation, or even other components within the same system. For example,the communication unit may include a modem, a network card (wireless orwired), an optical communication device, an infrared communicationdevice, a wireless communication device (such as an antenna), and/orchipset (such as a Bluetooth device, an 802.6 device (e.g., MetropolitanArea Network (MAN)), a WiFi device, a WiMax device, cellularcommunication facilities, or others), and/or the like. The communicationunit 740 may permit data to be exchanged with a network and/or any otherdevices or systems described in the present disclosure. For example, thecommunication unit may allow the computing system to communicate withother systems, such as computing devices and/or other networks, or evenother AVs.

In some embodiments, an AV may include a secondary computing system thatgenerates virtual bumpers in addition to a primary computing system thatmay provide general navigation and vehicle coordination. For example,the primary computing system may utilize input from the various sensorsof the AV and instructions regarding a destination and may provideinstructions to various subsystems of the AV, such as steering,throttle, braking, etc. to direct the AV in operation.

In some embodiments, the secondary computing system may be configuredwith a simplified system in comparison with the primary computingsystem. For example, the secondary computing device may receive datafrom one or more of the sensors of the AV and use that data to determinelocations of obstacles to the AV. In some embodiments, the data from thesensors may be provided to the secondary computing system from theprimary computing system. the primary computing device from the cameraand/or radar sensors to determine a location of one or more obstaclesproximate the AV. The secondary computing system may send a query to theprimary computing system regarding a given obstacle. If the primarycomputing system responds indicating it is aware of the given obstacle,the secondary computing system may continue to monitor the location ofthe obstacle relative to the AV. If there is no response or aninappropriate or unexpected response from the primary computing system,the secondary computing system may invoke one or more overridemechanisms. For example, the secondary computing system may invoke abraking mechanism, an emergency braking system, etc. to stop the AV.Additionally or alternatively, the secondary computing system mayoverride a throttle or other speed controlling system to decrease thespeed of/decelerate the AV.

While various embodiments are described with reference to Lidar, camera,and/or combinations thereof, it will be appreciated that the presentdisclosure is not limited to such a combination of sensors. To generatevirtual bumpers, other sensors may be utilized in addition to, orinstead of, such sensors. For example, some embodiments may utilize aLidar and/or an ultrasonic sensor. As another example, one or more sonarsensors may be utilized. As another example, sensors such as speedsensors, brake pressure sensors, GPS sensors, etc. may all be a part ofa suite of sensors to inform the AV with information that may facilitatethe formation of and utilization of virtual bumpers.

FIG. 6 illustrates another example system 600 of implementing virtualbumpers for an AV, in accordance with one or more embodiments of thepresent disclosure. The system 600 may include the AV 610, a sideobstacle 622 and a forward obstacle 624. The system 600 may implementone or more layers of virtual bumpers, such as a braking bumper 626, anda speed adjusting bumper 628. Additionally, in some embodiments, acombination of such bumpers may form a speed adjusting barrier 632, abraking adjusting barrier 634, and/or an obstacle collision barrier 636.

In some embodiments, the AV 610 may utilize one or more sensors todetect obstacles, such as the side obstacle 622 and/or the forwardobstacle 624. In some embodiments, a virtual bumper may not be generatedfor the side obstacle 622 as the side obstacle is not within a field ofpotential travel for the AV. Additionally or alternatively, virtualbumpers may be generated for all or just some obstacles.

In some embodiments, the AV 610 may generate the braking bumper 626 asthe distance the AV 610 may utilize to come to a complete stop and thusnot hit the obstacle 624 if the braking system or systems are engaged.In some embodiments, the braking bumper 626 may be a variable size basedon a variety of factors, including vehicle speed (higher speedsgenerating larger bumpers), road conditions (slick roads or gravel roadsgenerating larger bumpers), vehicle load (full vehicles generatinglarger bumpers), weather (rain/snow generating larger bumpers), externaltemperature (excessively high temperatures generating larger bumpers),type of cargo (fragile cargo like livestock or human passengersgenerating larger bumpers), distance from obstacle, etc.

In some embodiments, the AV 610 may generate the speed bumper 628 as thedistance the AV 610 may utilize to come to a stop and thus not hit theobstacle 624 if the throttle system is disabled such that no additionalacceleration is engaged for the AV 610. In these and other embodiments,the speed bumper 628 size may be determined based on similar orcomparable factors as the braking bumper 626. In some embodiments, thespeed bumper 628 may include considerations of the braking bumper 626such that the speed bumper may represent the distance to decelerate to apoint where it is safe and/or desirable for the braking system to takeover the stopping of the AV 610 at the braking bumper 626, rather thanwhen the AV 610 may come to a complete stop.

In some embodiments, with multiple obstacles, the AV 610 may generateone or more barriers, such as the speed adjusting barrier 632, thebraking adjusting barrier 634, and/or the obstacle collision barrier636. The speed adjusting barrier 632 may include a barrier connecting aleading edge of each of the speed bumpers for the obstacles within apotential travel path of the AV 610. The braking adjusting barrier 634may include a barrier connecting a leading edge of each of the brakingadjusting bumpers for the obstacles within a potential travel path ofthe AV 610. The obstacle collision barrier 636 may include a barrierconnecting each of the obstacles within the potential travel path of theAV 610. In these and other embodiments, the various barriers may be usedas a threshold across which, if the AV 610 crosses, the variousresponses described herein may be invoked.

In some embodiments, the AV 610 may utilize data from local sensorslocated on the AV 610 to perform the analysis for generating andanalyzing the virtual bumpers. In some embodiments, the AV 610 mayoperate such that one or both of the primary computing system or thesecondary computing system may communicate over a network with a remotecomputing system. In these and other embodiments, the contextual datautilized by the AV 610 to determine the location of obstacles, thelocation of the various barriers, etc. may be based on data provided bythe remote computing device rather than data collected from the localsensors of the AV 610. Additionally or alternatively, suchdeterminations may be based on both local sensor data and data from theremote computing system.

As used in the present disclosure, the terms “user device” or “computingdevice” or “non-transitory computer readable medium” may refer tospecific hardware implementations configured to perform the actions ofthe module or component and/or software objects or software routinesthat may be stored on and/or executed by general purpose hardware (e.g.,computer-readable media, processing devices, or some other hardware) ofthe computing system. In some embodiments, the different components,modules, engines, and services described in the present disclosure maybe implemented as objects or processes that execute on the computingsystem (e.g., as separate threads). While some of the systems andmethods described in the present disclosure are generally described asbeing implemented in software (stored on and/or executed by generalpurpose hardware), specific hardware implementations or a combination ofsoftware and specific hardware implementations are also possible andcontemplated. In this description, a “computing device” may be anycomputing system as previously defined in the present disclosure, or anymodule or combination of modules running on a computing device.

In accordance with common practice, the various features illustrated inthe drawings may not be drawn to scale. Accordingly, the dimensions ofthe various features may be arbitrarily expanded or reduced for clarity.In addition, some of the drawings may be simplified for clarity. Thus,the drawings may not depict all of the components of a given apparatus(e.g., device) or all operations of a particular method.

Terms used in the present disclosure and especially in the appendedclaims (e.g., bodies of the appended claims) are generally intended as“open” terms (e.g., the term “including” should be interpreted as“including, but not limited to,” the term “having” should be interpretedas “having at least,” the term “includes” should be interpreted as“includes, but is not limited to,” among others).

Additionally, if a specific number of an introduced claim recitation isintended, such an intent will be explicitly recited in the claim, and inthe absence of such recitation no such intent is present. For example,as an aid to understanding, the following appended claims may containusage of the introductory phrases “at least one” and “one or more” tointroduce claim recitations.

In addition, even if a specific number of an introduced claim recitationis explicitly recited, those skilled in the art will recognize that suchrecitation should be interpreted to mean at least the recited number(e.g., the bare recitation of “two recitations,” without othermodifiers, means at least two recitations, or two or more recitations).Furthermore, in those instances where a convention analogous to “atleast one of A, B, and C, etc.” or “one or more of A, B, and C, etc.” isused, in general such a construction is intended to include A alone, Balone, C alone, A and B together, A and C together, B and C together, orA, B, and C together, etc.

Further, any disjunctive word or phrase presenting two or morealternative terms, whether in the description, claims, or drawings,should be understood to contemplate the possibilities of including oneof the terms, either of the terms, or both terms. For example, thephrase “A or B” should be understood to include the possibilities of “A”or “B” or “A and B.”

However, the use of such phrases should not be construed to imply thatthe introduction of a claim recitation by the indefinite articles “a” or“an” limits any particular claim containing such introduced claimrecitation to embodiments containing only one such recitation, even whenthe same claim includes the introductory phrases “one or more” or “atleast one” and indefinite articles such as “a” or “an” (e.g., “a” and/or“an” should be interpreted to mean “at least one” or “one or more”); thesame holds true for the use of definite articles used to introduce claimrecitations.

Additionally, the use of the terms “first,” “second,” “third,” etc., arenot necessarily used herein to connote a specific order or number ofelements. Generally, the terms “first,” “second,” “third,” etc., areused to distinguish between different elements as generic identifiers.Absence a showing that the terms “first,” “second,” “third,” etc.,connote a specific order, these terms should not be understood toconnote a specific order. Furthermore, absent a showing that the terms“first,” “second,” “third,” etc., connote a specific number of elements,these terms should not be understood to connote a specific number ofelements.

All examples and conditional language recited in the present disclosureare intended for pedagogical objects to aid the reader in understandingthe invention and the concepts contributed by the inventor to furtheringthe art, and are to be construed as being without limitation to suchspecifically recited examples and conditions. Although embodiments ofthe present disclosure have been described in detail, it should beunderstood that the various changes, substitutions, and alterationscould be made hereto without departing from the spirit and scope of thepresent disclosure.

As used in the present disclosure, the terms “module” or “component” mayrefer to specific hardware implementations configured to perform theactions of the module or component and/or software objects or softwareroutines that may be stored on and/or executed by general purposehardware (e.g., computer-readable media, processing devices, and/orothers) of the computing system. In some embodiments, the differentcomponents, modules, engines, and services described in the presentdisclosure may be implemented as objects or processes that execute onthe computing system (e.g., as separate threads). While some of thesystem and methods described in the present disclosure are generallydescribed as being implemented in software (stored on and/or executed bygeneral purpose hardware), specific hardware implementations or acombination of software and specific hardware implementations are alsopossible and contemplated. In the present disclosure, a “computingentity” may be any computing system as previously defined in the presentdisclosure, or any module or combination of modulates running on acomputing system.

What is claimed is:
 1. A method, comprising: obtaining sensor data fromone or more sensor systems corresponding to an autonomous vehicle (AV);identifying one or more objects included in an environment around the AVbased on the obtained sensor data; generating a virtual braking bumperaround each of the identified objects; generating a virtual speed bumperaround each of the identified objects; determining whether the AV hasentered a range of at least one of the virtual speed bumpers;instructing the AV to reduce its acceleration responsive to determiningthat the AV has entered the range of at least one of the virtual speedbumpers; determining whether the AV has entered a range of at least oneof the virtual braking bumpers; and instructing the AV to brakeresponsive to determining that the AV has entered the range of at leastone of the virtual braking bumpers.
 2. The method of claim 1, wherein:determining whether the AV has entered the range of at least one of thevirtual speed bumpers includes generating a speed adjusting barrier thatconnects a leading edge of each of the virtual speed bumpers within apotential travel path of the AV; and instructing the AV to reduce itsacceleration is responsive to determining that the AV has entered therange of the speed adjusting barrier.
 3. The method of claim 1, wherein:determining whether the AV has entered the range of at least one of thevirtual braking bumpers includes generating a braking adjusting barrierthat connects a leading edge of each of the virtual braking bumperswithin a potential travel path of the AV; and instructing the AV tobrake is responsive to determining that the AV has entered the range ofthe braking adjusting barrier.
 4. The method of claim 1, wherein: eachof the sensor systems includes one or more LIght-Detection-And-Ranging(LIDAR) sensors and one or more image-capturing sensors; and the sensordata includes LIDAR data and image data captured by the sensor systems.5. The method of claim 1, further comprising: generating an obstaclecollision barrier that connects edges of the identified objects; andinstructing the AV to perform one or more evasive responses responsiveto determining that the AV has entered a range of the obstacle collisionbarrier.
 6. The method of claim 5, wherein the evasive responses includeat least one of: invoking a braking mechanism, applying an emergencybrake, or steering in a predetermined direction.
 7. The method of claim1, wherein a size of at least one of the virtual speed bumper or thevirtual braking bumper is determined based on at least one of: theobtained sensor data, a speed of the AV, one or more road conditions, avehicle load carried by the AV, one or more weather conditions, anexternal temperature condition, or a type of cargo carried by the AV. 8.One or more non-transitory computer-readable storage media configured tostore instructions that, in response to being executed, cause a systemto perform operations, the operations comprising: obtaining sensor datafrom one or more sensor systems corresponding to an autonomous vehicle(AV); identifying one or more objects included in an environment aroundthe AV based on the obtained sensor data; generating a virtual brakingbumper around each of the identified objects; generating a virtual speedbumper around each of the identified objects; determining whether the AVhas entered a range of at least one of the virtual speed bumpers;instructing the AV to reduce its acceleration responsive to determiningthat the AV has entered the range of at least one of the virtual speedbumpers; determining whether the AV has entered a range of at least oneof the virtual braking bumpers; and instructing the AV to brakeresponsive to determining that the AV has entered the range of at leastone of the virtual braking bumpers.
 9. The one or more non-transitorycomputer-readable storage media of claim 8, wherein: determining whetherthe AV has entered the range of at least one of the virtual speedbumpers includes generating a speed adjusting barrier that connects aleading edge of each of the virtual speed bumpers within a potentialtravel path of the AV; and instructing the AV to reduce its accelerationis responsive to determining that the AV has entered the range of thespeed adjusting barrier.
 10. The one or more non-transitorycomputer-readable storage media of claim 8, wherein: determining whetherthe AV has entered the range of at least one of the virtual brakingbumpers includes generating a braking adjusting barrier that connects aleading edge of each of the virtual braking bumpers within a potentialtravel path of the AV; and instructing the AV to brake is responsive todetermining that the AV has entered the range of the braking adjustingbarrier.
 11. The one or more non-transitory computer-readable storagemedia of claim 8, wherein: each of the sensor systems includes one ormore LIght-Detection-And-Ranging (LIDAR) sensors and one or moreimage-capturing sensors; and the sensor data includes LIDAR data andimage data captured by the sensor systems.
 12. The one or morenon-transitory computer-readable storage media of claim 8, wherein theoperations further comprise: generating an obstacle collision barrierthat connects edges of the identified objects; and instructing the AV toperform one or more evasive responses responsive to determining that theAV has entered a range of the obstacle collision barrier.
 13. The one ormore non-transitory computer-readable storage media of claim 12, whereinthe evasive responses include at least one of: invoking a brakingmechanism, applying an emergency brake, or steering in a predetermineddirection.
 14. The one or more non-transitory computer-readable storagemedia of claim 8, wherein a size of at least one of the virtual speedbumper or the virtual braking bumper is determined based on at least oneof: the obtained sensor data, a speed of the AV, one or more roadconditions, a vehicle load carried by the AV, one or more weatherconditions, an external temperature condition, or a type of cargocarried by the AV.
 15. A system, comprising: one or more processors; andone or more non-transitory computer-readable storage media configured tostore instructions that, in response to being executed, cause the systemto perform operations, the operations comprising: obtaining sensor datafrom one or more sensor systems corresponding to an autonomous vehicle(AV); identifying one or more objects included in an environment aroundthe AV based on the obtained sensor data; generating a virtual brakingbumper around each of the identified objects; generating a virtual speedbumper around each of the identified objects; determining whether the AVhas entered a range of at least one of the virtual speed bumpers;instructing the AV to reduce its acceleration responsive to determiningthat the AV has entered the range of at least one of the virtual speedbumpers; determining whether the AV has entered a range of at least oneof the virtual braking bumpers; and instructing the AV to brakeresponsive to determining that the AV has entered the range of at leastone of the virtual braking bumpers.
 16. The system of claim 15, wherein:determining whether the AV has entered the range of at least one of thevirtual speed bumpers includes generating a speed adjusting barrier thatconnects a leading edge of each of the virtual speed bumpers within apotential travel path of the AV; and instructing the AV to reduce itsacceleration is responsive to determining that the AV has entered therange of the speed adjusting barrier.
 17. The system of claim 15,wherein: determining whether the AV has entered the range of at leastone of the virtual braking bumpers includes generating a brakingadjusting barrier that connects a leading edge of each of the virtualbraking bumpers within a potential travel path of the AV; andinstructing the AV to brake is responsive to determining that the AV hasentered the range of the braking adjusting barrier.
 18. The system ofclaim 15, wherein the operations further comprise: generating anobstacle collision barrier that connects edges of the identifiedobjects; and instructing the AV to perform one or more evasive responsesresponsive to determining that the AV has entered a range of theobstacle collision barrier.
 19. The system of claim 18, wherein theevasive responses include at least one of: invoking a braking mechanism,applying an emergency brake, or steering in a predetermined direction.20. The system of claim 15, wherein a size of at least one of thevirtual speed bumper or the virtual braking bumper is determined basedon at least one of: the obtained sensor data, a speed of the AV, one ormore road conditions, a vehicle load carried by the AV, one or moreweather conditions, an external temperature condition, or a type ofcargo carried by the AV.